| 符号 | 含义 | true 条件 |
|---|---|---|
&& | 与 and | 两个都真 |
|| | 或 or | 至少一个真 |
! | 非 not | 真假反转 |
分支结构(if 与逻辑运算)
让程序"看情况办事":如果有西瓜就买一个,否则直接回家。
一、关系运算符产出真 / 假
| 运算符 | 含义 | 例子 | 结果 |
|---|---|---|---|
> >= | 大于 / 大于等于 | 3 >= 3 | true |
< <= | 小于 / 小于等于 | 5 <= 3 | false |
== | 等于 | 5 == 5 | true |
!= | 不等于 | 2 != 2 | false |
最致命的坑:判断相等是
==(两个等号)。= 是赋值,if (a = 5) 不是比较!二、互动演示:成绩分级走哪条分支
点一个分数,看 if / else if / else 从上往下怎么判断,命中哪条就停。
if (n >= 90) → 输出 "A"
else if (n >= 80) → 输出 "B"
else → 输出 "C"
点上面的分数试试。
三、逻辑运算符组合条件
( ) → * / % → + - → > >= < <= → == != → && ||
拿不准就加括号,既不会错也更易读。
四、参考代码:判断闰年
#include <iostream>
using namespace std;
int main() {
int y;
cin >> y;
// 能被4整除且不能被100整除,或者能被400整除
if ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0)) {
cout << "闰年";
} else {
cout << "平年";
}
return 0;
}
这题把 % 取余、关系、逻辑、括号优先级全用上了,是分支的集大成练习。